POV-Ray : Newsgroups : povray.binaries.images : Grass-iso [50kb] : Re: Grass-iso [50kb] Server Time
17 Aug 2024 00:11:48 EDT (-0400)
  Re: Grass-iso [50kb]  
From: Tom Melly
Date: 30 Nov 2001 07:04:10
Message: <3c0775ba$1@news.povray.org>
"Marc-Hendrik Bremer" <Mar### [at] t-onlinede> wrote in message
news:3c076bb1@news.povray.org...
>
> Looks good!

Thanks!

> What was the rendertime for this.
> Did you use R. Suzuki's method or another one? (This is a hidden request for
> the code :o))
>

For the full 800*600 with AA it took 10 hours (the image I posted was just a bit
of it).

No, the code is my own - I recall the Suzuki image, but I have no idea how
similiar or not my code is. Here it is...

global_settings {
  assumed_gamma 1.0
  noise_generator 2
  radiosity {
    pretrace_start 0.08           // start pretrace at this size
    pretrace_end   0.04           // end pretrace at this size
    count 35                      // higher -> higher quality (1..1600) [35]
    nearest_count 5               // higher -> higher quality (1..10) [5]
    error_bound 1.8               // higher -> smoother, less accurate [1.8]
    recursion_limit 3             // how much interreflections are calculated
(1..5+) [3]
    low_error_factor .5           // reduce error_bound during last pretrace
step
    gray_threshold 0.0            // increase for weakening colors (0..1) [0]
    minimum_reuse 0.015           // reuse of old radiosity samples [0.015]
    brightness 1                  // brightness of radiosity effects (0..1) [1]

    adc_bailout 0.01/2
  }
}
camera {
  location  <0.0, 5.0, -2.5>
  look_at   <0.0, 0.0,  5.0>
}

sky_sphere {pigment{rgb<0.0,0.1,0.8>}}

light_source {
  <0, 0, 0>            // light's position (translated below)
  color rgb <1, 1, 1>  // light's color
  translate <-30, 30, -30>
}

#declare GS = 20;
#declare GH = 2;
#include "functions.inc"
#include "finish.inc"
#declare fn_Grass = function(x,y,z){
  y +
  min(
    0,
    sin(  // x sin, add curve, add offset planting
      ((x + ((f_noise3d(x*10,0,z*10)+y)^2)/5 ) + f_noise3d(0,0,z))*GS*3
    ) / GH + // -1/GH > 1/GH
    sin(
      ((z + ((f_noise3d(x*10,0,z*10)+y)^2)/5 ) + f_noise3d(x,0,0))*GS*2
    ) / GH  // -1/GH > 1/GH // -2/GH > 2/GH
  )
}

isosurface {
  function{fn_Grass(x, y, z)}        // alternative declared function
  contained_by{box{<-25,-0.1,-2.5>,<25,1.1,30>}}
  accuracy 0.001                      // accuracy of calculation [0.001]
  max_gradient 20                      // maximum gradient the function can have
[1.1]
  evaluate 1, 1.2, 0.99             // evaluate the maximum gradient
  pigment{ForestGreen}
}


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.